Skip to content

mesh-data-model update#4296

Merged
stephenworsley merged 37 commits intoSciTools:mesh-data-model_updatedfrom
trexfeathers:mesh-data-model_update
Aug 31, 2021
Merged

mesh-data-model update#4296
stephenworsley merged 37 commits intoSciTools:mesh-data-model_updatedfrom
trexfeathers:mesh-data-model_update

Conversation

@trexfeathers
Copy link
Contributor

@trexfeathers trexfeathers commented Aug 26, 2021

This should be merged into mesh-data-model_updated via a merge commit

Latest updates for the mesh-data-model feature branch.

mesh-data-model_updated will replace the current mesh-data-model, but only after:

  • This PR is approved and merged
  • I finish some offline benchmarking experiments

trexfeathers and others added 30 commits February 8, 2021 14:43
* TopologyMetadata class.

* Connectivity class first pass.

* Enhanced Connectivity intelligence for masked elements.

* ConnectivityMetadata tests.

* Connectivity correct xml behaviour and better _values setting.

* Connectivity better shape validation message.

* Connectivity: corrected element size validation message.

* Connectivity unit tests.

* Connectivity additional unit tests.

* Connectivity in other unit tests.

* Connectivity __init__ docstring.

* Connectivity complete docstrings.

* Alphabetise ConnectivityMetadata usages.

* Connectivity clearer handling of locations and dims.

* Connectivity handle standard_name and units if provided.

* Connectivity align start_index docstring with UGRID conventions.

* Connectivity UGRID_CF_ROLES class attribute.

* Connectivity improved validate_arg_vs_list().

* Make Connectivity's extra attributes truly read-only.

* Connectivity stop overriding str and repr.

* Connectivity improved src_lengths and lazy operations.

* Connectivity indices typo.

* Connectivity resource-light indices validation.

* Connectivity enable transposed equivalence.

* Connectivity defaults stated in docstrings.

* Docstring corrections.

* test_class_connectivitymetadata updated to use src_dim.

* Connectivity transpose creates a new class from scratch instead of copying.

* Connectivity final review improvements.
* move connectivity to experimental

* drop pyugrid from py38.yml

* Update lib/iris/coords.py

Co-authored-by: Martin Yeo <40734014+trexfeathers@users.noreply.github.com>

* Update lib/iris/common/metadata.py

Co-authored-by: Martin Yeo <40734014+trexfeathers@users.noreply.github.com>

* Update lib/iris/experimental/ugrid.py

Co-authored-by: Martin Yeo <40734014+trexfeathers@users.noreply.github.com>

* review actions - drop logger

Co-authored-by: Martin Yeo <40734014+trexfeathers@users.noreply.github.com>
* Add abstract cube summary (SciTools#3987)

Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>

* add nox session conda list (SciTools#3990)

* Added text to state the Python version used to build the docs. (SciTools#3989)

* Added text to state the Python version used to build the docs.

* Added footer template that includes the Python version used to build.

* added new line

* Review actions

* added whatsnew

* Iris py38 (SciTools#3976)

* support for py38

* update CI and noxfile

* enforce alphabetical xml element attribute order

* full tests for py38 + fix docs-tests

* add whatsnew entry

* update doc-strings + review actions

* Alternate xml handling routine (#29)

* all xml tests pass for nox tests-3.8

* restored docstrings

* move sort_xml_attrs

* make sort_xml_attrs a classmethod

* update sort_xml_attr doc-string

Co-authored-by: Bill Little <bill.james.little@gmail.com>

* add jamesp to whatsnew + minor tweak

Co-authored-by: James Penn <james@jamespenn.co.uk>

* normalise version to implicit development release number (SciTools#3991)

* Gallery: update COP maps example  (SciTools#3934)

* update cop maps example

* comment tweaks

* minor comment tweak + whatsnew

* reinstate whatsnew addition

* remove duplicate whatsnew

* don't support mpl v1.2 (SciTools#3941)

* Cubesummary tidy (SciTools#3988)

* Extra tests; fix for array attributes.

* Docstring for CubeSummary, and remove some unused parts.

* Fix section name capitalisation, in line with existing cube summary.

* Handle array differences; quote strings in extras and if 'awkward'-printing.

* Ensure scalar string coord 'content' prints on one line.

* update intersphinx mapping and matplotlib urls (SciTools#4003)

* update intersphinx mapping and matplotlib urls

* use matplotlib intersphinx where possible

* review actions

* review actions

* update readme badges (SciTools#4004)

* update readme badges

* pimp twitter badge

* update readme logo img src and href (SciTools#4006)

* update setuptools description (SciTools#4008)

Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>
* Add abstract cube summary (SciTools#3987)

Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>

* add nox session conda list (SciTools#3990)

* Added text to state the Python version used to build the docs. (SciTools#3989)

* Added text to state the Python version used to build the docs.

* Added footer template that includes the Python version used to build.

* added new line

* Review actions

* added whatsnew

* Iris py38 (SciTools#3976)

* support for py38

* update CI and noxfile

* enforce alphabetical xml element attribute order

* full tests for py38 + fix docs-tests

* add whatsnew entry

* update doc-strings + review actions

* Alternate xml handling routine (#29)

* all xml tests pass for nox tests-3.8

* restored docstrings

* move sort_xml_attrs

* make sort_xml_attrs a classmethod

* update sort_xml_attr doc-string

Co-authored-by: Bill Little <bill.james.little@gmail.com>

* add jamesp to whatsnew + minor tweak

Co-authored-by: James Penn <james@jamespenn.co.uk>

* normalise version to implicit development release number (SciTools#3991)

* Gallery: update COP maps example  (SciTools#3934)

* update cop maps example

* comment tweaks

* minor comment tweak + whatsnew

* reinstate whatsnew addition

* remove duplicate whatsnew

* don't support mpl v1.2 (SciTools#3941)

* Cubesummary tidy (SciTools#3988)

* Extra tests; fix for array attributes.

* Docstring for CubeSummary, and remove some unused parts.

* Fix section name capitalisation, in line with existing cube summary.

* Handle array differences; quote strings in extras and if 'awkward'-printing.

* Ensure scalar string coord 'content' prints on one line.

* update intersphinx mapping and matplotlib urls (SciTools#4003)

* update intersphinx mapping and matplotlib urls

* use matplotlib intersphinx where possible

* review actions

* review actions

* update readme badges (SciTools#4004)

* update readme badges

* pimp twitter badge

* update readme logo img src and href (SciTools#4006)

* update setuptools description (SciTools#4008)

* cirrus-ci compute credits (SciTools#4007)

* update release process (SciTools#4010)

* Stop using deprecated aliases of builtin types (SciTools#3997)

* Stopped using deprecated aliases of builtin types.
This is required to avoid warnings starting with NumPy 1.20.0.

* Update lib/iris/tests/test_cell.py

Co-authored-by: Bill Little <bill.little@metoffice.gov.uk>

* Update lib/iris/tests/test_cell.py

Co-authored-by: Bill Little <bill.little@metoffice.gov.uk>

* Updated whatsnew.

Co-authored-by: Bill Little <bill.little@metoffice.gov.uk>

* celebrate first time iris contributors (SciTools#4013)

* Docs unreleased banner (SciTools#3999)

* baseline

* removed debug comments

* reverted

* remove line

* Testing

* testing extensions

* testing rtd_version

* fixed if

* removed line

* tidy up

* tidy comments

* debug of pre-existing rtd variables

* added reminder

* testing

* testing still

* updated comments

* added whatsnew

* expanded the if conditiion

* review actions

* Update layout.html

Remove alternative banner that used the RestructuredText notation.

* review actions

* drop __unicode__ method usage (SciTools#4018)

* cirrus-ci conditional tasks (SciTools#4019)

* cirrus-ci conditional tasks

* use bc for bash arithmetic

* revert back to sed

* use expr

* reword

* minor documentation changes

* review actions

* make iris.common.metadata._hexdigest public (SciTools#4020)

Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>
Co-authored-by: Alexander Kuhn-Regnier <ahf.kuhnregnier@gmail.com>
* add ugrid mesh-api stubs (SciTools#4001)

* add additional mesh stubs (SciTools#4005)

* Update mesh-data-model branch (SciTools#4009) (SciTools#4011)

* Add abstract cube summary (SciTools#3987)

Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>

* add nox session conda list (SciTools#3990)

* Added text to state the Python version used to build the docs. (SciTools#3989)

* Added text to state the Python version used to build the docs.

* Added footer template that includes the Python version used to build.

* added new line

* Review actions

* added whatsnew

* Iris py38 (SciTools#3976)

* support for py38

* update CI and noxfile

* enforce alphabetical xml element attribute order

* full tests for py38 + fix docs-tests

* add whatsnew entry

* update doc-strings + review actions

* Alternate xml handling routine (#29)

* all xml tests pass for nox tests-3.8

* restored docstrings

* move sort_xml_attrs

* make sort_xml_attrs a classmethod

* update sort_xml_attr doc-string

Co-authored-by: Bill Little <bill.james.little@gmail.com>

* add jamesp to whatsnew + minor tweak

Co-authored-by: James Penn <james@jamespenn.co.uk>

* normalise version to implicit development release number (SciTools#3991)

* Gallery: update COP maps example  (SciTools#3934)

* update cop maps example

* comment tweaks

* minor comment tweak + whatsnew

* reinstate whatsnew addition

* remove duplicate whatsnew

* don't support mpl v1.2 (SciTools#3941)

* Cubesummary tidy (SciTools#3988)

* Extra tests; fix for array attributes.

* Docstring for CubeSummary, and remove some unused parts.

* Fix section name capitalisation, in line with existing cube summary.

* Handle array differences; quote strings in extras and if 'awkward'-printing.

* Ensure scalar string coord 'content' prints on one line.

* update intersphinx mapping and matplotlib urls (SciTools#4003)

* update intersphinx mapping and matplotlib urls

* use matplotlib intersphinx where possible

* review actions

* review actions

* update readme badges (SciTools#4004)

* update readme badges

* pimp twitter badge

* update readme logo img src and href (SciTools#4006)

* update setuptools description (SciTools#4008)

Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>

Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>

* MeshMetadata class. (SciTools#4002)

* MeshMetadata class.

* MeshMetadata extra members for dim names.

* Comment for BaseMetadata refactoring.

* add meshmetadata services (SciTools#4012)

* Mesh api coord manager (SciTools#4015)

* add mesh coordinate manager

* wip

* make shape methods private + reorganise method order

* review actions

* partial mesh

* wip

* Mesh data model to ng vat mesh api (SciTools#4023)

* Update mesh-data-model branch (SciTools#4009)

* Add abstract cube summary (SciTools#3987)

Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>

* add nox session conda list (SciTools#3990)

* Added text to state the Python version used to build the docs. (SciTools#3989)

* Added text to state the Python version used to build the docs.

* Added footer template that includes the Python version used to build.

* added new line

* Review actions

* added whatsnew

* Iris py38 (SciTools#3976)

* support for py38

* update CI and noxfile

* enforce alphabetical xml element attribute order

* full tests for py38 + fix docs-tests

* add whatsnew entry

* update doc-strings + review actions

* Alternate xml handling routine (#29)

* all xml tests pass for nox tests-3.8

* restored docstrings

* move sort_xml_attrs

* make sort_xml_attrs a classmethod

* update sort_xml_attr doc-string

Co-authored-by: Bill Little <bill.james.little@gmail.com>

* add jamesp to whatsnew + minor tweak

Co-authored-by: James Penn <james@jamespenn.co.uk>

* normalise version to implicit development release number (SciTools#3991)

* Gallery: update COP maps example  (SciTools#3934)

* update cop maps example

* comment tweaks

* minor comment tweak + whatsnew

* reinstate whatsnew addition

* remove duplicate whatsnew

* don't support mpl v1.2 (SciTools#3941)

* Cubesummary tidy (SciTools#3988)

* Extra tests; fix for array attributes.

* Docstring for CubeSummary, and remove some unused parts.

* Fix section name capitalisation, in line with existing cube summary.

* Handle array differences; quote strings in extras and if 'awkward'-printing.

* Ensure scalar string coord 'content' prints on one line.

* update intersphinx mapping and matplotlib urls (SciTools#4003)

* update intersphinx mapping and matplotlib urls

* use matplotlib intersphinx where possible

* review actions

* review actions

* update readme badges (SciTools#4004)

* update readme badges

* pimp twitter badge

* update readme logo img src and href (SciTools#4006)

* update setuptools description (SciTools#4008)

Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>

* Master to mesh data model (SciTools#4022)

* Add abstract cube summary (SciTools#3987)

Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>

* add nox session conda list (SciTools#3990)

* Added text to state the Python version used to build the docs. (SciTools#3989)

* Added text to state the Python version used to build the docs.

* Added footer template that includes the Python version used to build.

* added new line

* Review actions

* added whatsnew

* Iris py38 (SciTools#3976)

* support for py38

* update CI and noxfile

* enforce alphabetical xml element attribute order

* full tests for py38 + fix docs-tests

* add whatsnew entry

* update doc-strings + review actions

* Alternate xml handling routine (#29)

* all xml tests pass for nox tests-3.8

* restored docstrings

* move sort_xml_attrs

* make sort_xml_attrs a classmethod

* update sort_xml_attr doc-string

Co-authored-by: Bill Little <bill.james.little@gmail.com>

* add jamesp to whatsnew + minor tweak

Co-authored-by: James Penn <james@jamespenn.co.uk>

* normalise version to implicit development release number (SciTools#3991)

* Gallery: update COP maps example  (SciTools#3934)

* update cop maps example

* comment tweaks

* minor comment tweak + whatsnew

* reinstate whatsnew addition

* remove duplicate whatsnew

* don't support mpl v1.2 (SciTools#3941)

* Cubesummary tidy (SciTools#3988)

* Extra tests; fix for array attributes.

* Docstring for CubeSummary, and remove some unused parts.

* Fix section name capitalisation, in line with existing cube summary.

* Handle array differences; quote strings in extras and if 'awkward'-printing.

* Ensure scalar string coord 'content' prints on one line.

* update intersphinx mapping and matplotlib urls (SciTools#4003)

* update intersphinx mapping and matplotlib urls

* use matplotlib intersphinx where possible

* review actions

* review actions

* update readme badges (SciTools#4004)

* update readme badges

* pimp twitter badge

* update readme logo img src and href (SciTools#4006)

* update setuptools description (SciTools#4008)

* cirrus-ci compute credits (SciTools#4007)

* update release process (SciTools#4010)

* Stop using deprecated aliases of builtin types (SciTools#3997)

* Stopped using deprecated aliases of builtin types.
This is required to avoid warnings starting with NumPy 1.20.0.

* Update lib/iris/tests/test_cell.py

Co-authored-by: Bill Little <bill.little@metoffice.gov.uk>

* Update lib/iris/tests/test_cell.py

Co-authored-by: Bill Little <bill.little@metoffice.gov.uk>

* Updated whatsnew.

Co-authored-by: Bill Little <bill.little@metoffice.gov.uk>

* celebrate first time iris contributors (SciTools#4013)

* Docs unreleased banner (SciTools#3999)

* baseline

* removed debug comments

* reverted

* remove line

* Testing

* testing extensions

* testing rtd_version

* fixed if

* removed line

* tidy up

* tidy comments

* debug of pre-existing rtd variables

* added reminder

* testing

* testing still

* updated comments

* added whatsnew

* expanded the if conditiion

* review actions

* Update layout.html

Remove alternative banner that used the RestructuredText notation.

* review actions

* drop __unicode__ method usage (SciTools#4018)

* cirrus-ci conditional tasks (SciTools#4019)

* cirrus-ci conditional tasks

* use bc for bash arithmetic

* revert back to sed

* use expr

* reword

* minor documentation changes

* review actions

* make iris.common.metadata._hexdigest public (SciTools#4020)

Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>
Co-authored-by: Alexander Kuhn-Regnier <ahf.kuhnregnier@gmail.com>

Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>
Co-authored-by: Alexander Kuhn-Regnier <ahf.kuhnregnier@gmail.com>

* Connectivity manager (SciTools#4017)

* ConnectivityManager first pass.

* ConnectivityManager align with proposed CoordManager.

* Connectivity Manager review actions.

* Connectivity Manager more review changes.

* Use metadata_manager for Mesh location dimension.

* Mesh dimension name abstraction.

* Align Cooord and Connectivity Managers filters methods.

* Completed Mesh class.

* filter_cf improvements.

* Moved filter_cf.

* Mesh connectivity manager namedtuples comment.

* Mesh removed trailing underscores.

* Mesh _set_dimension_names improvements.

* Mesh import rationalisation.

* Mesh connectivity manager remove NDIM.

* Connectivity manager use lazy indices_by_src().

* Connectivity manager clearer removal syntax.

* Connectivity manager don't override __init__.

* Connectivity manager correct base class syntax.

* Metadata filter hexdigest reference fix.

* test_MeshMetadata fix.

* Rename filter to metadata_filter.

* minor fixes (SciTools#4025)

* minor fixes

* wip

* add mesh pickle support (SciTools#4026)

Co-authored-by: Bill Little <bill.james.little@gmail.com>
Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>
Co-authored-by: Alexander Kuhn-Regnier <ahf.kuhnregnier@gmail.com>
* Fix some problems with existing tests.

* Add MeshCoordMetadata, and tests.

* Add tests.

* Tidy import code + cleaner package namespace.

* Fix duplicated comment.

* Rationalise which non-member metadata item in testing.

* Remove 'mesh' from MeshCoordMetadata.

* Common code to add metadata methods into lenient service collections.
* add ugrid mesh-api stubs (SciTools#4001)

* add additional mesh stubs (SciTools#4005)

* Update mesh-data-model branch (SciTools#4009) (SciTools#4011)

* Add abstract cube summary (SciTools#3987)

Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>

* add nox session conda list (SciTools#3990)

* Added text to state the Python version used to build the docs. (SciTools#3989)

* Added text to state the Python version used to build the docs.

* Added footer template that includes the Python version used to build.

* added new line

* Review actions

* added whatsnew

* Iris py38 (SciTools#3976)

* support for py38

* update CI and noxfile

* enforce alphabetical xml element attribute order

* full tests for py38 + fix docs-tests

* add whatsnew entry

* update doc-strings + review actions

* Alternate xml handling routine (#29)

* all xml tests pass for nox tests-3.8

* restored docstrings

* move sort_xml_attrs

* make sort_xml_attrs a classmethod

* update sort_xml_attr doc-string

Co-authored-by: Bill Little <bill.james.little@gmail.com>

* add jamesp to whatsnew + minor tweak

Co-authored-by: James Penn <james@jamespenn.co.uk>

* normalise version to implicit development release number (SciTools#3991)

* Gallery: update COP maps example  (SciTools#3934)

* update cop maps example

* comment tweaks

* minor comment tweak + whatsnew

* reinstate whatsnew addition

* remove duplicate whatsnew

* don't support mpl v1.2 (SciTools#3941)

* Cubesummary tidy (SciTools#3988)

* Extra tests; fix for array attributes.

* Docstring for CubeSummary, and remove some unused parts.

* Fix section name capitalisation, in line with existing cube summary.

* Handle array differences; quote strings in extras and if 'awkward'-printing.

* Ensure scalar string coord 'content' prints on one line.

* update intersphinx mapping and matplotlib urls (SciTools#4003)

* update intersphinx mapping and matplotlib urls

* use matplotlib intersphinx where possible

* review actions

* review actions

* update readme badges (SciTools#4004)

* update readme badges

* pimp twitter badge

* update readme logo img src and href (SciTools#4006)

* update setuptools description (SciTools#4008)

Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>

Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>

* MeshMetadata class. (SciTools#4002)

* MeshMetadata class.

* MeshMetadata extra members for dim names.

* Comment for BaseMetadata refactoring.

* add meshmetadata services (SciTools#4012)

* Mesh api coord manager (SciTools#4015)

* add mesh coordinate manager

* wip

* make shape methods private + reorganise method order

* review actions

* partial mesh

* wip

* Mesh data model to ng vat mesh api (SciTools#4023)

* Update mesh-data-model branch (SciTools#4009)

* Add abstract cube summary (SciTools#3987)

Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>

* add nox session conda list (SciTools#3990)

* Added text to state the Python version used to build the docs. (SciTools#3989)

* Added text to state the Python version used to build the docs.

* Added footer template that includes the Python version used to build.

* added new line

* Review actions

* added whatsnew

* Iris py38 (SciTools#3976)

* support for py38

* update CI and noxfile

* enforce alphabetical xml element attribute order

* full tests for py38 + fix docs-tests

* add whatsnew entry

* update doc-strings + review actions

* Alternate xml handling routine (#29)

* all xml tests pass for nox tests-3.8

* restored docstrings

* move sort_xml_attrs

* make sort_xml_attrs a classmethod

* update sort_xml_attr doc-string

Co-authored-by: Bill Little <bill.james.little@gmail.com>

* add jamesp to whatsnew + minor tweak

Co-authored-by: James Penn <james@jamespenn.co.uk>

* normalise version to implicit development release number (SciTools#3991)

* Gallery: update COP maps example  (SciTools#3934)

* update cop maps example

* comment tweaks

* minor comment tweak + whatsnew

* reinstate whatsnew addition

* remove duplicate whatsnew

* don't support mpl v1.2 (SciTools#3941)

* Cubesummary tidy (SciTools#3988)

* Extra tests; fix for array attributes.

* Docstring for CubeSummary, and remove some unused parts.

* Fix section name capitalisation, in line with existing cube summary.

* Handle array differences; quote strings in extras and if 'awkward'-printing.

* Ensure scalar string coord 'content' prints on one line.

* update intersphinx mapping and matplotlib urls (SciTools#4003)

* update intersphinx mapping and matplotlib urls

* use matplotlib intersphinx where possible

* review actions

* review actions

* update readme badges (SciTools#4004)

* update readme badges

* pimp twitter badge

* update readme logo img src and href (SciTools#4006)

* update setuptools description (SciTools#4008)

Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>

* Master to mesh data model (SciTools#4022)

* Add abstract cube summary (SciTools#3987)

Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>

* add nox session conda list (SciTools#3990)

* Added text to state the Python version used to build the docs. (SciTools#3989)

* Added text to state the Python version used to build the docs.

* Added footer template that includes the Python version used to build.

* added new line

* Review actions

* added whatsnew

* Iris py38 (SciTools#3976)

* support for py38

* update CI and noxfile

* enforce alphabetical xml element attribute order

* full tests for py38 + fix docs-tests

* add whatsnew entry

* update doc-strings + review actions

* Alternate xml handling routine (#29)

* all xml tests pass for nox tests-3.8

* restored docstrings

* move sort_xml_attrs

* make sort_xml_attrs a classmethod

* update sort_xml_attr doc-string

Co-authored-by: Bill Little <bill.james.little@gmail.com>

* add jamesp to whatsnew + minor tweak

Co-authored-by: James Penn <james@jamespenn.co.uk>

* normalise version to implicit development release number (SciTools#3991)

* Gallery: update COP maps example  (SciTools#3934)

* update cop maps example

* comment tweaks

* minor comment tweak + whatsnew

* reinstate whatsnew addition

* remove duplicate whatsnew

* don't support mpl v1.2 (SciTools#3941)

* Cubesummary tidy (SciTools#3988)

* Extra tests; fix for array attributes.

* Docstring for CubeSummary, and remove some unused parts.

* Fix section name capitalisation, in line with existing cube summary.

* Handle array differences; quote strings in extras and if 'awkward'-printing.

* Ensure scalar string coord 'content' prints on one line.

* update intersphinx mapping and matplotlib urls (SciTools#4003)

* update intersphinx mapping and matplotlib urls

* use matplotlib intersphinx where possible

* review actions

* review actions

* update readme badges (SciTools#4004)

* update readme badges

* pimp twitter badge

* update readme logo img src and href (SciTools#4006)

* update setuptools description (SciTools#4008)

* cirrus-ci compute credits (SciTools#4007)

* update release process (SciTools#4010)

* Stop using deprecated aliases of builtin types (SciTools#3997)

* Stopped using deprecated aliases of builtin types.
This is required to avoid warnings starting with NumPy 1.20.0.

* Update lib/iris/tests/test_cell.py

Co-authored-by: Bill Little <bill.little@metoffice.gov.uk>

* Update lib/iris/tests/test_cell.py

Co-authored-by: Bill Little <bill.little@metoffice.gov.uk>

* Updated whatsnew.

Co-authored-by: Bill Little <bill.little@metoffice.gov.uk>

* celebrate first time iris contributors (SciTools#4013)

* Docs unreleased banner (SciTools#3999)

* baseline

* removed debug comments

* reverted

* remove line

* Testing

* testing extensions

* testing rtd_version

* fixed if

* removed line

* tidy up

* tidy comments

* debug of pre-existing rtd variables

* added reminder

* testing

* testing still

* updated comments

* added whatsnew

* expanded the if conditiion

* review actions

* Update layout.html

Remove alternative banner that used the RestructuredText notation.

* review actions

* drop __unicode__ method usage (SciTools#4018)

* cirrus-ci conditional tasks (SciTools#4019)

* cirrus-ci conditional tasks

* use bc for bash arithmetic

* revert back to sed

* use expr

* reword

* minor documentation changes

* review actions

* make iris.common.metadata._hexdigest public (SciTools#4020)

Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>
Co-authored-by: Alexander Kuhn-Regnier <ahf.kuhnregnier@gmail.com>

Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>
Co-authored-by: Alexander Kuhn-Regnier <ahf.kuhnregnier@gmail.com>

* Connectivity manager (SciTools#4017)

* ConnectivityManager first pass.

* ConnectivityManager align with proposed CoordManager.

* Connectivity Manager review actions.

* Connectivity Manager more review changes.

* Use metadata_manager for Mesh location dimension.

* Mesh dimension name abstraction.

* Align Cooord and Connectivity Managers filters methods.

* Completed Mesh class.

* filter_cf improvements.

* Moved filter_cf.

* Mesh connectivity manager namedtuples comment.

* Mesh removed trailing underscores.

* Mesh _set_dimension_names improvements.

* Mesh import rationalisation.

* Mesh connectivity manager remove NDIM.

* Connectivity manager use lazy indices_by_src().

* Connectivity manager clearer removal syntax.

* Connectivity manager don't override __init__.

* Connectivity manager correct base class syntax.

* Metadata filter hexdigest reference fix.

* test_MeshMetadata fix.

* Rename filter to metadata_filter.

* minor fixes (SciTools#4025)

* minor fixes

* wip

* add mesh pickle support (SciTools#4026)

* Test Mesh WIP.

* Mesh face_dimension not set for topology_dimension=1.

* Mesh testing WIP.

* Mesh tests WIP.

* Mesh tests WIP.

* Mesh tests complete.

* Mesh repr tests.

* experimental.ugrid restore class ordering.

* Mesh tests - move global and class variables into setUpClass methods, to play nicely with unittest.

* Delete commented code.

* Mesh clearer distinction between coords and connectivities filters.

* Mesh tests slight readability improvement.

Co-authored-by: Bill Little <bill.james.little@gmail.com>
Co-authored-by: Patrick Peglar <patrick.peglar@metoffice.gov.uk>
Co-authored-by: stephen.worsley <stephen.worsley@metoffice.gov.uk>
Co-authored-by: tkknight <2108488+tkknight@users.noreply.github.com>
Co-authored-by: James Penn <james@jamespenn.co.uk>
Co-authored-by: Ruth Comer <ruth.comer@metoffice.gov.uk>
Co-authored-by: Alexander Kuhn-Regnier <ahf.kuhnregnier@gmail.com>
* add mesh public doc-strings

* review actions

* review actions

* review actions
* Add MeshCoord with basic tests.

* Revised __init__; fixed copy mechanisms. Still WIP.

* Apply suggestions from code review

Co-authored-by: Martin Yeo <40734014+trexfeathers@users.noreply.github.com>

* Review changes.

* Rethink getitem and copy; test points and bounds results.

* Fix for changed API on rebase.

* Review changes.

* Review changes.

* Adjust equality behaviour, and test it.

* Tiny fix.

Co-authored-by: Martin Yeo <40734014+trexfeathers@users.noreply.github.com>
…590] (SciTools#4053)

* Better calculations for MeshCoord lazy/real points and bounds.

* Allow for possibly tranposed connectivity indices.

* Handle connectivity src_dim and start_index: Tests that, and edge location.

* Tidy following rebase.

* Extra review change.

* Simplify basic calc; test handling of invalid index values.

* Review changes.
* MeshCoord str/repr support.

* Left-over old review change.

* Remove some unused legacy code.
* MeshCoord changes : add shape in printout; support __hash__ for use in sets/dicts.

* Add mesh_coords key to Cube.coord/coords.  With tests.
* Add cube mesh+location access methods.

* Add tests for Cube.__eq__ with MeshCoords.

* WIP: enforce compatibility of a cube's MeshCoords.

* Add Cube.mesh_dim(); ensure all mesh-coords have the same cube dims.

* Docstring fixes and improvements.

* Factor out test-mesh-cube creation into iris.tests.stock.

* Make cube.mesh and cube.location properties.
…ata-model

Merge master to mesh data model
* initial support for unstructured plotting using pyvista

* extend slider support for projections

* add comments

* review actions + slider event auto-updates picked cell stats

* restructure with ugrid module

* add notebook support

* add rcParams + various fixes

* cirrus-ci skip conda update

* include add_title rcParams

* review actions

* review actions

* fix slider label to support non-time

* slider and picking units handling

* review actions

* add cell picking nan count

* pin conda

* pin mpl to 3.3.4

* update broken link

* review actions

* support ipyvtk notebook backend

* undo cirrus-ci task skippers

* skip autodocs building ugrid.plot
* Deduce correct topology-dimension from connectivities, and be tolerant on loading.

* Added simple integration tests.

* Review changes.

* Review changes: use 'logging' module in place of 'warnings'.

* Replace deprecated assertion method; check logged message levels.

* Simplify logging tests; tidy synthetic file creation.
trexfeathers and others added 7 commits July 22, 2021 16:31
…dated

Update the `mesh-data-model` feature branch wrt `main`
…date

`mesh-data-model` update from `main` (from 4850fda to head of main, 8944143)
* add whatsnew for UGRID support

* add description of UGRID work

* fix links

* add highlight

* address review comments

* address review comments

* address review comments
@trexfeathers trexfeathers added Feature: UGRID Type: Feature Branch Highlight this for a feature branch labels Aug 26, 2021
@trexfeathers trexfeathers requested a review from abooton August 26, 2021 14:05
@trexfeathers trexfeathers changed the title Mesh data model update mesh-data-model update Aug 26, 2021
Copy link
Contributor

@stephenworsley stephenworsley left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me.

@stephenworsley stephenworsley merged commit 4b18209 into SciTools:mesh-data-model_updated Aug 31, 2021
@trexfeathers trexfeathers deleted the mesh-data-model_update branch August 31, 2021 15:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Feature: UGRID Type: Feature Branch Highlight this for a feature branch

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants